use std::sync::OnceLock;

use tokio::runtime::Runtime;

/// 全局 tokio 通用运行时
static mut GLOBAL_RUNTIME_TOKIO: OnceLock<Runtime> = OnceLock::new();

/// 获取全局 tokio 通用运行时
pub fn runtime() -> &'static Runtime {
    unsafe {
        GLOBAL_RUNTIME_TOKIO.get_or_init(|| Runtime::new().expect("创建Tokio运行时失败"))
    }
}